diff --git a/pylint/reporters/text.py b/pylint/reporters/text.py
index 29bd46798..39b314f9c 100644
--- a/pylint/reporters/text.py
+++ b/pylint/reporters/text.py
@@ -175,14 +175,14 @@ class TextReporter(BaseReporter):
         self._template = template
 
         # Check to see if all parameters in the template are attributes of the Message
-        arguments = re.findall(r"\{(.+?)(:.*)?\}", template)
+        arguments = re.findall(r"\{\{?(.+?)(:.*)?\}?\}", template)
         for argument in arguments:
             if argument[0] not in MESSAGE_FIELDS:
                 warnings.warn(
                     f"Don't recognize the argument '{argument[0]}' in the --msg-template. "
                     "Are you sure it is supported on the current version of pylint?"
                 )
-                template = re.sub(r"\{" + argument[0] + r"(:.*?)?\}", "", template)
+                template = re.sub(r"\{\{?" + argument[0] + r"(:.*?)?\}?\}", "", template)
         self._fixed_template = template
 
     def write_message(self, msg: Message) -> None:
